/*
 * @Description: 
 * @Author: Aroma
 * @Date: 2024-11-07 10:38:04
 * @LastEditors: Aroma
 * @LastEditTime: 2024-11-07 15:18:14
 * @别瞎看: 你个无脑牛马
 */

//push(element)向数组的末尾添加一个或多个元素，并返回新的长度
let arr1 =[1,2,3];
let newLength = arr1.push(4);
console.log(arr1);
console.log(newLength);

//pop()删除数组的最后一个元素，并返回该元素。
let arr2 =[1,2,3];
let lastElement = arr2.pop();
console.log(arr2);
console.log(lastElement);

//shift()删除数组的第一个元素，并返回该元素。
let arr3 =[1,2,3];
let firstElement = arr3.shift();
console.log(arr3);
console.log(firstElement);

//unshift(element1,element2,.....,elementN)向数组的开头添加一个或多个元素，并返回新的长度。
let arr4 =[1,2,3];
let newLength1 = arr4.unshift(4,5);
console.log(arr4);
console.log(newLength1);

//concat(element1,element2,.....,elementN)用于连接两个或多个数组。
let arr5 =[1,2,3];
let arr6 =[4,5,6];
let newArray = arr5.concat(arr6);
console.log(newArray);

//slice(start,end)返回一个新的数组，该数组包含从start到end（但不包括end）位置的所有元素。
let arr7 =[1,2,3,4,5];
let newArray1 = arr7.slice(1,4);
console.log(newArray1);

//splice(start,deleteCount,item1,item2,.....,itemN)用于向数组中添加或删除元素。
let arr8 =[1,2,3,4,5];
let removedElements = arr8.splice(2,2,'a','b','c');
console.log(arr8);
console.log(removedElements);

//join(separator)用于将数组中的所有元素转换为字符串，并使用指定的分隔符进行连接。
let arr9 =[1,2,3,4,5];
let joinedString = arr9.join('-');
console.log(joinedString);

//reverse()用于反转数组中元素的顺序。
let arr10 =[1,2,3,4,5];
let reversedArray = arr10.reverse();
console.log(reversedArray);

//map(callback)创建一个新数组，其结果是调用提供的函数处理每个元素的结果。
let arr11 =[1,2,3,4,5];
let newArray2 = arr11.map(x => x * 2);
console.log(newArray2);

//filter(callback)创建一个新数组，其包含通过提供的函数测试通过所有元素的元素。
let arr12 =[1,2,3,4,5];
let evenNumbers = arr12.filter(x => x % 2 === 0);
console.log(evenNumbers);

//reduce(callback,initialValue)对数组中的每个元素执行一个由您提供的回调函数，将其结果汇总为单个返回值。
let arr13 =[1,2,3,4,5];
let sum = arr13.reduce((accumulator, currentValue) => accumulator + currentValue, 0);//求和
console.log(sum);

//forEach(callback)用于调用数组的每个元素，并将元素传递给回调函数。
let arr14 =[1,2,3,4,5];
arr14.forEach(x => console.log(x));//遍历

//find(callback)用于查找数组中符合条件的第一个元素，并返回该元素。
let arr15 =[1,2,3,4,5];
let foundElement = arr15.find(x => x > 3);
console.log(foundElement);

//findIndex(callback)用于查找数组中符合条件的第一个元素的索引，并返回该索引。
let arr16 =[1,2,3,4,5];
let foundIndex = arr16.findIndex(x => x > 3);
console.log(foundIndex);



